/**
 * 将数字成色转换为文字描述
 * @param oldLevel 成色数值 (50-100)
 * @returns 文字描述
 */
export const getOldLevelText = (oldLevel: number): string => {
  if (!oldLevel || oldLevel < 50 || oldLevel > 100) {
    return '未知成色'
  }
  
  if (oldLevel === 100) {
    return '全新'
  } else if (oldLevel >= 95) {
    return '几乎全新'
  } else if (oldLevel >= 90) {
    return '轻微使用痕迹'
  } else if (oldLevel >= 85) {
    return '明显使用痕迹'
  } else if (oldLevel >= 80) {
    return '较多使用痕迹'
  } else if (oldLevel >= 75) {
    return '明显磨损'
  } else if (oldLevel >= 70) {
    return '较多磨损'
  } else if (oldLevel >= 65) {
    return '严重磨损'
  } else if (oldLevel >= 60) {
    return '较多损坏'
  } else if (oldLevel >= 55) {
    return '明显损坏'
  } else {
    return '严重损坏'
  }
}

// 用户名字脱敏处理
export const maskUserName = (userName: string): string => {
  if (!userName || userName.trim() === '') {
    return '未知用户'
  }
  
  const name = userName.trim()
  
  // 如果是英文用户名，保留前两个字符，其余用*替换
  if (/^[a-zA-Z0-9_]+$/.test(name)) {
    if (name.length <= 2) {
      return name
    }
    return name.substring(0, 2) + '*'.repeat(name.length - 2)
  }
  
  // 如果是中文名字，保留第一个字符，其余用*替换
  if (/^[\u4e00-\u9fa5]+$/.test(name)) {
    if (name.length <= 1) {
      return name
    }
    return name.charAt(0) + '*'.repeat(name.length - 1)
  }
  
  // 其他情况，保留前两个字符
  if (name.length <= 2) {
    return name
  }
  return name.substring(0, 2) + '*'.repeat(name.length - 2)
} 